layui.define(['form'], function (exports) {
  var $ = layui.$;
  var validator = {};

  /**
   * 用户名验证：只能为数字、字母、中文
   * 
   * @param value 表单值
   * @param domEle 表单的DOM对象
   */
  validator.username = function(value, domEle){
    if(!new RegExp("^[a-zA-Z0-9_\u4e00-\u9fa5\\s·]+$").test(value)){
      return '用户名不能有特殊字符';
    }
    if(/\_/.test(value)){
      return '用户名不能出现下划线\'_\'';
    }
  }
  
  /**
   * 手机号验证：只能为 11 位手机号
   * 
   * @param value 表单值
   */
  validator.mobile = function(value){
    if(!new RegExp("^1[0-9]{10}$").test(value)){
      return '号码错误，只能为11位手机号';
    }
  }

  var formVerifier = {};
  
  Object.keys(validator).forEach((key) => {
    var validateFunc = validator[key];

    if (typeof validateFunc === 'function') {
      formVerifier[key] = function (value, domEle) {
        value = $.trim(value);

        if (value === '') {
          return;
        }

        return validateFunc(value, domEle);
      }
    }
  });

  layui.form.verify(formVerifier);
  
  exports('validator', validator);
});